/**
 *
 */
package com.zetor.ms.repository.entity.poeorder;

import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/*
 * FIN_OPF_BILLDETAIL
 *
 * author: jinyongliang

*/
@TableName("FIN_OPF_BILLDETAIL")
public class BillDetailEntity implements Serializable {

	/**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = -9066500536922178875L;

	/**
	 * 主键
	 */
	private String billSn;


	/**
	 * 交易类型: 1正交易 2负交易
	 */
	private String transType;

	/**
	 * 挂号流水号
	 */
	private String regSn;

	/**
	 * 处方号
	 */
	private String recipeNo;

	/**
	 * 处方内部顺序号
	 */
	private BigDecimal sortNo;

	/**
	 * 看诊流水号
	 */
	private String seeSn;

	/**
	 * 患者档案号
	 */
	private String patientId;

	/**
	 * 开立医生编码
	 */
	private String entryDoctCode;

	/**
	 * 开立医生姓名
	 */
	private String entryDoctName;

	/**
	 * 开立科室编码
	 */
	private String entryDeptCode;

	/**
	 * 开立科室名称
	 */
	private String entryDeptName;

	/**
	 * 项目编码
	 */
	private String itemCode;

	/**
	 * 项目名称
	 */
	private String itemName;

	/**
	 * 费用类别编码C
	 */
	private String feeCode;

	/**
	 * 复合项目编码
	 */
	private String packageCode;

	/**
	 * 复合项目名称
	 */
	private String packageName;

	/**
	 ** 药品标识 01非药品  02西药成药 03草药
	 */
	private String drugFlag;

	/**
	 * 划价数量
	 */
	private BigDecimal chargeQty;

    /** 草药剂数 */
    private BigDecimal doseQty;

    /** 使用天数 */
	private BigDecimal useDays;

	/**
	 * 单价-准确值
	 */
	private BigDecimal unitPrice;

	/**
	 * 记价单位
	 */
	private String unit;

	/**
	 * 金额-准确值
	 */
	private BigDecimal totalCost;

	/**
	 * 医嘱执行流水号
	 */
	private String execSn;

	/**
	 * 组合号
	 */
	private String combNo;

	/**
	 * 执行科室编码
	 */
	private String execDeptCode;

	/**
	 * 执行科室名称
	 */
	private String execDeptName;

    /** 支付标识 1已支付 0未支付 */
    private String payFlag = "0";

    /** 账单标识0 退费  1 有效  2 重打  3 注销 */
    private String validState = "1";

    /** 划价操作员编码 */
    private String chargeOperCode;

    /** 划价时间 */
    private Date chargeDatetime;

    /** 收款员编码 */
    private String feeOperCode;

    /** 收款时间 */
    private Date feeDatetime;

    /** 发票号 */
    private String invoiceNo;

    /** 结算流水号 */
    private String balnceSn;

    /** 账单来源E 01挂号划价 02医嘱划价 03终端划价 04外派划价 05收款员划价 */
    private String billSourceClass;

    /**
	 * 医院编码
	 */
	private String hospitalId;

	/**
	 * 院区编码
	 */
	private String compoundId;

	/**
	 * 扩展字段1
	 */
	private String extend1;

	/**
	 * 扩展字段2
	 */
	private String extend2;

	/**
	 * 扩展字段3
	 */
	private String extend3;

	/**
	 * 操作员编码
	 */
	private String operCode;

	/**
	 * 操作时间
	 */
	private Date operDatetime;

	/**
	 * 术语编码
	 */
	private String termCode;

	/**
	 * 术语名称
	 */
	private String termName;

	/**
	 * 术语规格
	 */
	private String termSpecs;

	/**
	 * 术语收费数量
	 */
	private BigDecimal termChargeQty;

	/**
	 * 术语单价
	 */
	private BigDecimal termUnitPrice;

	/**
	 * 术语单位
	 */
	private String termUnit;

	// 医嘱唯一编码
	private String orderSn;

    public BillDetailEntity() {
		super();
		// TODO Auto-generated constructor stub
	}


	/**
     * 获取账单流水号
     *
     * @return 账单流水号
     */
    public String getBillSn() {
        return this.billSn;
    }

    /**
     * 设置账单流水号
     *
     * @param billSn
     *          账单流水号
     */
	public void setBillSn(String billSn) {
		this.billSn = billSn;
	}


    /**
     * 获取交易类型 1正交易 2负交易
     *
     * @return 交易类型 1正交易 2负交易
     */
    public String getTransType() {
        return this.transType;
    }

    /**
     * 设置交易类型 1正交易 2负交易
     *
     * @param transType
     *          交易类型 1正交易 2负交易
     */
    public void setTransType(String transType) {
        this.transType = transType;
    }

    /**
     * 获取挂号流水号
     *
     * @return 挂号流水号
     */
    public String getRegSn() {
        return this.regSn;
    }

    /**
     * 设置挂号流水号
     *
     * @param regSn
     *          挂号流水号
     */
    public void setRegSn(String regSn) {
        this.regSn = regSn;
    }

    /**
     * 获取处方号
     *
     * @return 处方号
     */
    public String getRecipeNo() {
        return this.recipeNo;
    }

    /**
     * 设置处方号
     *
     * @param recipeNo
     *          处方号
     */
    public void setRecipeNo(String recipeNo) {
        this.recipeNo = recipeNo;
    }

    /**
     * 获取处方内顺序号
     *
     * @return 处方内顺序号
     */
    public BigDecimal getSortNo() {
        return this.sortNo;
    }

    /**
     * 设置处方内顺序号
     *
     * @param sortNo
     *          处方内顺序号
     */
    public void setSortNo(BigDecimal sortNo) {
        this.sortNo = sortNo;
    }

    /**
     * 获取看诊流水号
     *
     * @return 看诊流水号
     */
    public String getSeeSn() {
        return this.seeSn;
    }

    /**
     * 设置看诊流水号
     *
     * @param seeSn
     *          看诊流水号
     */
    public void setSeeSn(String seeSn) {
        this.seeSn = seeSn;
    }

    /**
     * 获取患者档案号
     *
     * @return 患者档案号
     */
    public String getPatientId() {
        return this.patientId;
    }

    /**
     * 设置患者档案号
     *
     * @param patientId
     *          患者档案号
     */
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }

    /**
     * 获取开立医生编码
     *
     * @return 开立医生编码
     */
    public String getEntryDoctCode() {
        return this.entryDoctCode;
    }

    /**
     * 设置开立医生编码
     *
     * @param entryDoctCode
     *          开立医生编码
     */
    public void setEntryDoctCode(String entryDoctCode) {
        this.entryDoctCode = entryDoctCode;
    }

    /**
     * 获取开立医生姓名
     *
     * @return 开立医生姓名
     */
    public String getEntryDoctName() {
        return this.entryDoctName;
    }

    /**
     * 设置开立医生姓名
     *
     * @param entryDoctName
     *          开立医生姓名
     */
    public void setEntryDoctName(String entryDoctName) {
        this.entryDoctName = entryDoctName;
    }

    /**
     * 获取开立科室编码
     *
     * @return 开立科室编码
     */
    public String getEntryDeptCode() {
        return this.entryDeptCode;
    }

    /**
     * 设置开立科室编码
     *
     * @param entryDeptCode
     *          开立科室编码
     */
    public void setEntryDeptCode(String entryDeptCode) {
        this.entryDeptCode = entryDeptCode;
    }

    /**
     * 获取开立科室名称
     *
     * @return 开立科室名称
     */
    public String getEntryDeptName() {
        return this.entryDeptName;
    }

    /**
     * 设置开立科室名称
     *
     * @param entryDeptName
     *          开立科室名称
     */
    public void setEntryDeptName(String entryDeptName) {
        this.entryDeptName = entryDeptName;
    }

    /**
     * 获取项目编码
     *
     * @return 项目编码
     */
    public String getItemCode() {
        return this.itemCode;
    }

    /**
     * 设置项目编码
     *
     * @param itemCode
     *          项目编码
     */
    public void setItemCode(String itemCode) {
        this.itemCode = itemCode;
    }

    /**
     * 获取项目名称
     *
     * @return 项目名称
     */
    public String getItemName() {
        return this.itemName;
    }

    /**
     * 设置项目名称
     *
     * @param itemName
     *          项目名称
     */
    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    /**
     * 获取费用类别编码C
     *
     * @return 费用类别编码C
     */
    public String getFeeCode() {
        return this.feeCode;
    }

    /**
     * 设置费用类别编码C
     *
     * @param feeCode
     *          费用类别编码C
     */
    public void setFeeCode(String feeCode) {
        this.feeCode = feeCode;
    }

    /**
     * 获取复合项目编码
     *
     * @return 复合项目编码
     */
    public String getPackageCode() {
        return this.packageCode;
    }

    /**
     * 设置复合项目编码
     *
     * @param packageCode
     *          复合项目编码
     */
    public void setPackageCode(String packageCode) {
        this.packageCode = packageCode;
    }

    /**
     * 获取复合项目名称
     *
     * @return 复合项目名称
     */
    public String getPackageName() {
        return this.packageName;
    }

    /**
     * 设置复合项目名称
     *
     * @param packageName
     *          复合项目名称
     */
    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }

    /**
     * 获取药品标识 0非药品 1药品
     *
     * @return 药品标识 0非药品 1药品
     */
    public String getDrugFlag() {
        return this.drugFlag;
    }

    /**
     * 设置药品标识 0非药品 1药品
     *
     * @param drugFlag
     *          药品标识 0非药品 1药品
     */
    public void setDrugFlag(String drugFlag) {
        this.drugFlag = drugFlag;
    }

    /**
     * 获取划价数量
     *
     * @return 划价数量
     */
    public BigDecimal getChargeQty() {
        return this.chargeQty;
    }

    /**
     * 设置划价数量
     *
     * @param chargeQty
     *          划价数量
     */
    public void setChargeQty(BigDecimal chargeQty) {
        this.chargeQty = chargeQty;
    }

    /**
     * 获取草药剂数
     *
     * @return 草药剂数
     */
    public BigDecimal getDoseQty() {
        return this.doseQty;
    }

    /**
     * 设置草药剂数
     *
     * @param doseQty
     *          草药剂数
     */
    public void setDoseQty(BigDecimal doseQty) {
        this.doseQty = doseQty;
    }

    /**
     * 获取使用天数
     *
     * @return 使用天数
     */
    public BigDecimal getUseDays() {
        return this.useDays;
    }

    /**
     * 设置使用天数
     *
     * @param useDays
     *          使用天数
     */
    public void setUseDays(BigDecimal useDays) {
        this.useDays = useDays;
    }

    /**
     * 获取单价
     *
     * @return 单价
     */
    public BigDecimal getUnitPrice() {
        return this.unitPrice;
    }

    /**
     * 设置单价
     *
     * @param unitPrice
     *          单价
     */
    public void setUnitPrice(BigDecimal unitPrice) {
        this.unitPrice = unitPrice;
    }

    /**
     * 获取记价单位
     *
     * @return 记价单位
     */
    public String getUnit() {
        return this.unit;
    }

    /**
     * 设置记价单位
     *
     * @param unit
     *          记价单位
     */
    public void setUnit(String unit) {
        this.unit = unit;
    }

    /**
     * 获取总金额
     *
     * @return 总金额
     */
    public BigDecimal getTotalCost() {
        return this.totalCost;
    }

    /**
     * 设置总金额
     *
     * @param totalCost
     *          总金额
     */
    public void setTotalCost(BigDecimal totalCost) {
        this.totalCost = totalCost;
    }

    /**
     * 获取医嘱执行流水号
     *
     * @return 医嘱执行流水号
     */
    public String getExecSn() {
        return this.execSn;
    }

    /**
     * 设置医嘱执行流水号
     *
     * @param execSn
     *          医嘱执行流水号
     */
    public void setExecSn(String execSn) {
        this.execSn = execSn;
    }

    /**
     * 获取组合号
     *
     * @return 组合号
     */
    public String getCombNo() {
        return this.combNo;
    }

    /**
     * 设置组合号
     *
     * @param combNo
     *          组合号
     */
    public void setCombNo(String combNo) {
        this.combNo = combNo;
    }

    /**
     * 获取执行科室编码
     *
     * @return 执行科室编码
     */
    public String getExecDeptCode() {
        return this.execDeptCode;
    }

    /**
     * 设置执行科室编码
     *
     * @param execDeptCode
     *          执行科室编码
     */
    public void setExecDeptCode(String execDeptCode) {
        this.execDeptCode = execDeptCode;
    }

    /**
     * 获取执行科室名称
     *
     * @return 执行科室名称
     */
    public String getExecDeptName() {
        return this.execDeptName;
    }

    /**
     * 设置执行科室名称
     *
     * @param execDeptName
     *          执行科室名称
     */
    public void setExecDeptName(String execDeptName) {
        this.execDeptName = execDeptName;
    }

    /**
     * 获取支付标识 1已支付 0未支付
     *
     * @return 支付标识 1已支付 0未支付
     */
    public String getPayFlag() {
        return this.payFlag;
    }

    /**
     * 设置支付标识 1已支付 0未支付
     *
     * @param payFlag
     *          支付标识 1已支付 0未支付
     */
    public void setPayFlag(String payFlag) {
        this.payFlag = payFlag;
    }

	public String getValidState() {
		return validState;
	}

	public void setValidState(String validState) {
		this.validState = validState;
	}

	/**
     * 获取划价操作员编码
     *
     * @return 划价操作员编码
     */
    public String getChargeOperCode() {
        return this.chargeOperCode;
    }

    /**
     * 设置划价操作员编码
     *
     * @param chargeOperCode
     *          划价操作员编码
     */
    public void setChargeOperCode(String chargeOperCode) {
        this.chargeOperCode = chargeOperCode;
    }

    /**
     * 获取划价时间
     *
     * @return 划价时间
     */
    public Date getChargeDatetime() {
        return this.chargeDatetime;
    }

    /**
     * 设置划价时间
     *
     * @param chargeDatetime
     *          划价时间
     */
    public void setChargeDatetime(Date chargeDatetime) {
        this.chargeDatetime = chargeDatetime;
    }

    /**
     * 获取收款员编码
     *
     * @return 收款员编码
     */
    public String getFeeOperCode() {
        return this.feeOperCode;
    }

    /**
     * 设置收款员编码
     *
     * @param feeOperCode
     *          收款员编码
     */
    public void setFeeOperCode(String feeOperCode) {
        this.feeOperCode = feeOperCode;
    }

    /**
     * 获取收款时间
     *
     * @return 收款时间
     */
    public Date getFeeDatetime() {
        return this.feeDatetime;
    }

    /**
     * 设置收款时间
     *
     * @param feeDatetime
     *          收款时间
     */
    public void setFeeDatetime(Date feeDatetime) {
        this.feeDatetime = feeDatetime;
    }

    /**
     * 获取发票号
     *
     * @return 发票号
     */
    public String getInvoiceNo() {
        return this.invoiceNo;
    }

    /**
     * 设置发票号
     *
     * @param invoiceNo
     *          发票号
     */
    public void setInvoiceNo(String invoiceNo) {
        this.invoiceNo = invoiceNo;
    }

    /**
     * 获取结算流水号
     *
     * @return 结算流水号
     */
    public String getBalnceSn() {
        return this.balnceSn;
    }

    /**
     * 设置结算流水号
     *
     * @param balnceSn
     *          结算流水号
     */
    public void setBalnceSn(String balnceSn) {
        this.balnceSn = balnceSn;
    }

    /**
     * 获取账单来源E 01挂号划价 02医嘱划价 03终端划价 04外派划价 05收款员划价
     *
     * @return 账单来源E 01挂号划价 02医嘱划价 03终端划价 04外派划价 05收款员划价
     */
    public String getBillSourceClass() {
        return this.billSourceClass;
    }

    /**
     * 设置账单来源E 01挂号划价 02医嘱划价 03终端划价 04外派划价 05收款员划价
     *
     * @param billSourceClass
     *          账单来源E 01挂号划价 02医嘱划价 03终端划价 04外派划价 05收款员划价
     */
    public void setBillSourceClass(String billSourceClass) {
        this.billSourceClass = billSourceClass;
    }

    /**
	 * @return 获取 hospitalId 的值
	 */
	public String getHospitalId() {
		return hospitalId;
	}

	/**
	 * 设置 hospitalId 的值
	 * @param hospitalId 要设置的 hospitalId
	 */
	public void setHospitalId(String hospitalId) {
		this.hospitalId = hospitalId;
	}

	/**
	 * @return 获取 compoundId 的值
	 */
	public String getCompoundId() {
		return compoundId;
	}

	/**
	 * 设置 compoundId 的值
	 * @param compoundId 要设置的 compoundId
	 */
	public void setCompoundId(String compoundId) {
		this.compoundId = compoundId;
	}

	/**
	 * @return 获取 extend1 的值
	 */
	public String getExtend1() {
		return extend1;
	}

	/**
	 * 设置 extend1 的值
	 * @param extend1 要设置的 extend1
	 */
	public void setExtend1(String extend1) {
		this.extend1 = extend1;
	}

	/**
	 * @return 获取 extend2 的值
	 */
	public String getExtend2() {
		return extend2;
	}

	/**
	 * 设置 extend2 的值
	 * @param extend2 要设置的 extend2
	 */
	public void setExtend2(String extend2) {
		this.extend2 = extend2;
	}

	/**
	 * @return 获取 extend3 的值
	 */
	public String getExtend3() {
		return extend3;
	}

	/**
	 * 设置 extend3 的值
	 * @param extend3 要设置的 extend3
	 */
	public void setExtend3(String extend3) {
		this.extend3 = extend3;
	}

	/**
	 * @return 获取 operCode 的值
	 */
	public String getOperCode() {
		return operCode;
	}

	/**
	 * 设置 operCode 的值
	 * @param operCode 要设置的 operCode
	 */
	public void setOperCode(String operCode) {
		this.operCode = operCode;
	}

	/**
	 * @return 获取 operDatetime 的值
	 */
	public Date getOperDatetime() {
		return operDatetime;
	}

	/**
	 * 设置 operDatetime 的值
	 * @param operDatetime 要设置的 operDatetime
	 */
	public void setOperDatetime(Date operDatetime) {
		this.operDatetime = operDatetime;
	}

	/**
	 * @return the termCode
	 */
	public String getTermCode() {
		return termCode;
	}

	/**
	 * @param termCode the termCode to set
	 */
	public void setTermCode(String termCode) {
		this.termCode = termCode;
	}

	/**
	 * @return the termName
	 */
	public String getTermName() {
		return termName;
	}

	/**
	 * @param termName the termName to set
	 */
	public void setTermName(String termName) {
		this.termName = termName;
	}

	/**
	 * @return the termSpecs
	 */
	public String getTermSpecs() {
		return termSpecs;
	}

	/**
	 * @param termSpecs the termSpecs to set
	 */
	public void setTermSpecs(String termSpecs) {
		this.termSpecs = termSpecs;
	}

	/**
	 * @return the termChargeQty
	 */
	public BigDecimal getTermChargeQty() {
		return termChargeQty;
	}

	/**
	 * @param termChargeQty the termChargeQty to set
	 */
	public void setTermChargeQty(BigDecimal termChargeQty) {
		this.termChargeQty = termChargeQty;
	}

	/**
	 * @return the termUnitPrice
	 */
	public BigDecimal getTermUnitPrice() {
		return termUnitPrice;
	}

	/**
	 * @param termUnitPrice the termUnitPrice to set
	 */
	public void setTermUnitPrice(BigDecimal termUnitPrice) {
		this.termUnitPrice = termUnitPrice;
	}

	/**
	 * @return the termUnit
	 */
	public String getTermUnit() {
		return termUnit;
	}

	/**
	 * @param termUnit the termUnit to set
	 */
	public void setTermUnit(String termUnit) {
		this.termUnit = termUnit;
	}

	public String getOrderSn() {
		return orderSn;
	}

	public void setOrderSn(String orderSn) {
		this.orderSn = orderSn;
	}
}
